The present invention relates to a personal computer incorporated type of numerical control apparatus and a screen shifting method in the personal computer incorporated type of numerical control apparatus. More particularly this invention speeds up the shifting of screens.
A personal computer incorporated type of numerical control apparatus edits a machining program or monitors numerical control operations in a man-machine interface processing section (called as an MMI processing section hereinafter) of a personal computer section (called as a PC section hereinafter), and analyzes and interpolates a machining program registered in a memory of a numerical control section (called as an NC section hereinafter) in the NC section, and outputs an instruction to a servo system of a machine tool according to a result of the processing.
FIG. 14 shows a general outline of a personal computer incorporated type of numerical control apparatus (called as a PC incorporated type of numerical control apparatus hereinafter). The PC incorporated type of numerical control apparatus has a NC section 10 which executes a machining program and a PC section 200 displays the screens, setting data or the like, and monitors the operations.
The NC section 10 comprises a machining program analyzing section 11, a memory 12, an interpolator 13, a shaft controller 14, a machine control signal processor 15, a ladder circuit section 16, a digital signal input circuit 17, a digital signal output circuit 18, a PC interface 20, and a dual-port RAM 50.
One shaft controller 14 is provided for every shaft although only one unit is shown in FIG. 14. A servo-amplifier 310 of a servomotor 300 for each shaft is connected to each of the shaft controllers 14.
The servomotor 300 has a pulse generator for position detection although it is not shown in FIG. 14. The servo-amplifier 310 has a positional loop by a position feedback signal from the pulse generator.
The PC section 200 comprises a BIOS (Basic I/O System) section 201, an operating system section (called as an OS section hereinafter) 202, a MMI processing section 250, and a NC interface 203, and is connected to a hard disk storage device (called as an external storage device hereinafter) 100 as well as to a control panel with a display 110 via an interface (not shown).
The MMI processing section 250 has a screen display processing section 260 and a data setting unit 280.
The control panel 110 has a display 111 such as a CRT or LCD, a data entry section 112 such as a keyboard, a power-ON switch 113, and a power-OFF switch 114.
The conventional type of PC incorporated type of numerical control apparatus is con figured as described above, and operations thereof will be described hereinafter.
In the PC incorporated type of numerical control apparatus, entry of a machining program is carried out by means of key operation of the data input section 112 by an operator.
The key-entered machining program is inputted into the MMI processing section 250 via the OS section 202. The machining program inputted into MMI processing section 250 is converted to data code by the data setting unit 280 so that the personal computer can recognizes the program, and the converted data code is written in the hard disk storage device 100 via the OS section 202 and at the same time is transmitted to the NC interface 203.
The NC interface 203 writes the machining program transmitted from the data setting section 280 in a prespecified address of the dual-port RAM 50 in the NC section 10, and turns ON a data-write completion flag.
The PC interface 20 in the NC section 10 monitors a data-write completion flag on the dual-port RAM 50, and reads the machining program written on the dual-port RAM 50 when the data-write completion flag is detected, and writes the machining program in a file system constructed in the memory 12. In this process, the PC interface 20 checks whether any code which can not be handled in the numerical control unit, for instance, code such as low-case alphabetic characters is present in the program or not. The machining program written in the hard disk storage device 100 serves as a backup data if the machining program registered on the memory 12 in the NC section 10 is corrupted.
The input machining program is displayed on the display 111 of the control panel 110 as follows. At first, the PC interface 20 reads the machining program registered on the memory 12, writes the program in a prespecified address of the dual-port RAM 50, and turns ON the data-write completion flag. The NC interface 203 monitors a data-write completion flag on the dual-port RAM 50, and reads the machining program written on the dual-port RAM 50 when the data-write completion flag is detected, and transfers the machining program to the screen display processing section 260 of the MMI processing section 250.
The screen display processing section 260 adds fixed display data or the like such as a screen title to the received machining program and outputs the data to the display 111 via the OS section 202, then the display 111 displays the data such as the machining program thereon.
A sequence of executing a machining program is explained here. The machining program analyzing section 11 reads a machining program from the memory 12 block by block, and analyzes the read out machining program to compute a position of an end point of each block. The interpolator 13 interpolates positions of end points, and distributes each program up to each position of the end point to a movement instruction per unit time of each movable shaft.
The movement instruction outputted by the interpolator 13 is converted to a movement instruction per unit time under the consideration of acceleration and deceleration according to an acceleration/deceleration pattern previously specified by the shaft controller 14, and outputted to the servo-amplifier 310 as a servo movement instruction.
The servo-amplifier 310 controls driving of the servomotor 300 attached to a machine tool not shown according to this servo movement instruction.
Furthermore, a machine output signal-indicating ON or OFF of a cutting lubricant is transmitted to a relay circuit of a machine control console not shown from a machine control signal processor 15 via a digital signal output circuit 18 to have an ON/OFF switch of the cutting lubricant or the like operate. A signal inputted from the machine side such as a dog switch is inputted from a digital signal input circuit 17 to the machine control signal processing section 15. The signal inputted into or outputted from the digital signal input circuit 17 and digital signal output circuit 18 as described above is processed in the machine control signal processor 15 via a ladder circuit section 16 for describing machine control therein, and a result of the processing or the like is transmitted to the interpolator 13.
Conventionally, when screen display is performed based on a graphical user interface (called as GUI hereinafter) in a multitask fashion in the PC section 200 of the PC incorporated type of numerical control apparatus, display of each screen is executed by an application program based on an execution type of file for each screen.
For example, when the PC section is based on xe2x80x9cWindowsxe2x80x9d of Microsoft Inc., as shown by the reference numerals 500 and 501 in FIG. 15, discrete application programs xe2x80x9c***screen.exexe2x80x9d and xe2x80x9c000screen.exexe2x80x9d are provided in each screen.
Each of these exe-files is a discrete application program with a Document-View structure according to a structure of classes of xe2x80x9cCFormView Classxe2x80x9d, xe2x80x9cCDocument Classxe2x80x9d, and xe2x80x9cCWinApp Classxe2x80x9d provided by MFC (Microsoft Foundation Class Library) as Application framework library by Microsoft Inc, is given thereto with a function of a main frame window by a dynamic link library xe2x80x9cscreen shift common processing library (D11)xe2x80x9d (shown by the reference numeral 503 in FIG. 15) based on xe2x80x9cCFrameWnd Classxe2x80x9d respectively, performs data transaction with the NC section 10 via a custom API library 510, and displays a screen with a window respectively.
In the conventional type of PC incorporated type of numerical control apparatus, screen display based on GUI such as a window in the PC section 200 is performed by an application program based on the execution type of file for each screen, therefore each application program has to be started and terminated each time screen shift is executed, and processing used for a plurality of screens with sub-windows such as a screen for displaying the coordinates is performed by a discrete application program. Therefore, object size of the MMI software as a whole becomes large, and a long time is required for application loading from an external storage device such as a hard disk storage device 100, which hinders speed up of screen shift.
In the PC section 200, when data such as coordinates, a movement speed, a rotation speed, and temperature updated continuously or periodically in the NC section 10 is displayed on the screen in the PC section 200 as modal data, conventionally, the PC section 200 issues a request for modal data registration for each data to the NC section 10, and the NC section 10 searches target data and sets the data in the dual-port RAM 50 as a response thereto, while the PC section 200 reads the data set in the dual-port RAM 50 for screen display therefore when a plurality of modal data is displayed in one screen, each of the modal data is displayed one by one with a time lag therebetween, so that the screen display takes a long time, which makes the response to the screen display slow.
Further, the offset of a tool or the like is not periodically updated, and when data such as parameters required for screen display is to be displayed on the screen, conventionally, the PC section 200 issues a screen data registration request for each data to the NC section 10, and the NC section 10 searches target data and sets the data in the dual-port RAM 50 as a response thereto, while the PC section 200 reads the data set in the dual-port RAM 50 for screen display, therefore when a plurality of screen data is displayed in one screen, each of the screen data is displayed one by one with a time lag therebetween, so that the screen display takes a long time.
The present invention has been made for solving the problems as described above, and it is an object of the present invention to obtain a screen shifting method in a personal computer incorporated type of numerical control apparatus for realizing high speed screen shift in GUI such as a window as well as a personal computer incorporated type of numerical control apparatus used for executing the screen shifting method, and also to obtain a personal computer incorporated type of numerical control apparatus with improved high speed screen display by executing screen display of modal data and screen data at a high speed with fast response.
To achieve the object described above, in a screen shifting method in a personal computer incorporated type of numerical control apparatus according to the present invention with a personal computer incorporated therein and having a numerical control unit for executing a machining program and a personal computer unit for editing the machining program or monitoring numerical control operations by the numerical control unit; the method comprising the steps of registering screen processing libraries each including an independent processing section for each screen for defining contents of display on each screen and contents of setting and management for data used by the numerical control unit and a common processing section for screen shift in each screen; reading out all of the registered screen processing libraries onto a memory managed by an operating system when starting a screen shift execution program; managing location of each of the screen processing libraries with a screen management table according to a discrete identification code; accepting a screen shift request in the situation where the screen shift execution program has been started and selecting a screen processing library corresponding to identification code specified in response to the screen shift request from data in the screen management table; and executing screen shift according to the selected screen processing library.
In the screen shifting method according to the present invention, screen shift can be executed at a high speed with a plurality of screen processing libraries and one screen shift execution file without starting or terminating an application program each time screen shift is executed.
Furthermore, screen shift is executed at a higher speed by temporarily raising a priority of execution of the application to the highest priority during screen shift.
In addition, to achieve the object as described above, a personal computer incorporated type of numerical control apparatus according to the present invention with a personal computer incorporated therein and having a numerical control unit for executing a machining program and a personal computer unit for editing the machining program or monitoring numerical control operations by the numerical control unit; the apparatus comprises a plurality of screen processing units for each screen registered as a library for each screen and including an independent processing section for each screen for defining contents of display on each screen and also contents of setting and management for data used by the numerical control unit and a common processing section for screen shift; a screen management table for managing location of the registered screen processing units according to an identification code; and a screen control unit for selecting a screen processing unit corresponding to the identification code specified in response to a screen shift request with the screen management table and instructing execution of screen shift with the selected screen processing unit.
In the personal computer incorporated type of numerical control apparatus according to the present invention, a screen processing unit is registered as one library for each screen, and the screen control unit selects a screen processing unit corresponding to ID code specified in response to a request for screen shift with the screen management table and instructs execution of screen shift with the selected screen processing unit.
In a personal computer incorporated type of numerical control apparatus according to another aspect of the present invention and also in the personal computer incorporated type of numerical control apparatus according to the above invention, the screen control unit initializes the screen management table in starting according to a screen management table definition file. The screen management table definition file is prepared in a text file format, so that the file can easily be modified with Notepad as a standard tool of Windows.
In this personal computer incorporated type of numerical control apparatus, a screen management table is initialized or reconstructed each time the screen control unit is started.
To achieve the object as described above, a personal computer incorporated type of numerical control apparatus according to the present invention with a personal computer incorporated therein and having a numerical control unit for executing a machining program and a personal computer unit for editing the machining program or monitoring numerical control operations by the numerical control unit; the apparatus comprises a shared memory accessible from both the numerical control unit and the personal computer unit with a modal information table defined therein; a modal data batch registering unit provided in the personal computer unit for reporting a request for batch registration of data such as coordinates to be updated continuously or periodically for each screen in the numerical control unit to the numerical control unit; and a modal information managing unit provided in the numerical control unit for collecting data for each screen continuously or periodically updated in response to a request from the modal data batch registering unit and setting the data in a modal information table in the shared memory; wherein the personal computer unit reads data set in the modal information table in the shared memory for each screen and executes processing for screen display.
In the personal computer incorporated type of numerical control apparatus according to the present invention, continuously or periodically updated data is set for each screen in the modal information table in the shared memory by the modal information managing unit in response to a request for batch registration of data from the modal data batch registering unit, and the personal computer unit reads the data set in the modal information table of the shared memory for each screen for screen display.
In a personal computer incorporated type of numerical control apparatus according to another aspect of the present invention, the personal computer incorporated type of numerical control apparatus according to the above invention further comprises a modal data batch canceling unit for reporting a request for canceling data registered by the modal data batch registering unit in batch by each screen to the numerical control unit; wherein the modal information managing unit deletes data set in the modal information table in the shared memory in batch in response to the request from the modal data batch canceling unit.
In the personal computer incorporated type of numerical control apparatus according to the present invention, the data set in the modal information table in the shared memory is deleted in batch in response to a data batch canceling request from the modal data batch canceling unit.
In addition, to achieve the object as described above, a personal computer incorporated type of numerical control apparatus according to the present invention with a personal computer incorporated therein and having a numerical control unit for executing a machining program and a personal computer unit for editing the machining program or monitoring numerical control operations by the numerical control unit; the apparatus comprises a screen data memory provided in the numerical control unit for storing therein data for the numerical control unit such as parameters required for screen display; a screen data registering unit provided in the personal computer unit for reporting a request for registering data for the numerical control unit for each screen in batch to the numerical control unit; a screen data batch reading unit provided in the personal computer unit for reporting a request for reading screen data specified on selection of a new screen in batch to the numerical control unit and reading the screen data in batch from the numerical control unit; and a screen data managing unit provided in the numerical control unit for storing data such as parameters required for screen display in response to the request from the screen data registering unit in the screen data memory, reading data from the screen data memory in response to the request from the screen data batch reading unit, and transmitting the data in batch to the screen data batch reading unit; wherein the personal computer unit executes the processing for screen display of the data transmitted to the screen data batch reading unit.
In the personal computer incorporated type of numerical control apparatus according to the present invention, the screen data registering unit stores data such as parameters required for each screen display in a screen data memory in response to a screen data registration request with the screen data registering unit, and the screen data batch reading unit reports a request for reading data specified on selection of a new screen in batch to the numerical control unit, so that data in the screen data memory is read in batch and the data is displayed on the screen.